package sg.edu.nus.iss.phoenix.schedule.dao;

import java.sql.SQLException;
import java.util.ArrayList;
import java.sql.Date;

import sg.edu.nus.iss.phoenix.schedule.entity.ProgramSlot;
import sg.edu.nus.iss.phoenix.schedule.entity.Schedule;
/**
 * 
 * @author Goh Zhe Yi, Ramprasad, Karthic Kumar
 *
 */
public interface ScheduleDAO {

	public int createSchedule(Schedule schedule) throws SQLException;
	public int modifySchedule(Schedule schedule) throws SQLException;
	public int deleteSchedule(Schedule schedule) throws SQLException;
	public ArrayList<Schedule> getListOfSchedule(Date startDate, Date endDate)throws Exception;
	public int getScheduleCountBetweenStartAndEndDate(String startDate,String endDate) throws SQLException ;
	public Schedule getSchedule(String startDate)throws SQLException, Exception;
	public void createProgramSlot(ProgramSlot programSlot) throws SQLException, Exception;
	public void modifyProgramSlot(ProgramSlot programSlot) throws SQLException;
	public void deleteProgramSlot(int programSlotId) throws SQLException;
}
